home *** CD-ROM | disk | FTP | other *** search
/ 100 Plus Great Games 2 / 100PLUSV2.BIN / games / Duchess.dxr / Internal_7_waste cards.ls < prev    next >
Encoding:
Text File  |  2002-01-25  |  2.5 KB  |  87 lines

  1. property spriteNum, motion, undercard, location, fp
  2. global waste, getlist, equal, currentsel, godlist, foundation, points, tableau, stock, redeals
  3.  
  4. on beginSprite me
  5.   waste = new(script("card pile"))
  6.   undercard = sprite(11)
  7.   location = sprite(spriteNum).loc
  8. end
  9.  
  10. on mouseDown me
  11.   if waste.getcardcount() > 0 then
  12.     puppetSound(3, member("pick card", "100GPak Generic SFX"))
  13.     sprite(spriteNum).locZ = spriteNum + 1000
  14.     getlist = waste
  15.     if waste.getcardcount() > 1 then
  16.       undercard.member = member(waste.cards[waste.getcardcount() - 1].membername, "playing cards")
  17.     else
  18.       if waste.getcardcount() = 1 then
  19.         undercard.member = member("empty", "playing cards")
  20.       end if
  21.     end if
  22.     motion = timeout(string(spriteNum) && "motion").new(5, #moving, me)
  23.   end if
  24. end
  25.  
  26. on moving me
  27.   if the mouseDown then
  28.     sprite(spriteNum).loc = the mouseLoc
  29.   else
  30.     if the mouseUp then
  31.       sprite(spriteNum).locZ = spriteNum
  32.       motion.forget()
  33.       abort()
  34.     end if
  35.   end if
  36. end
  37.  
  38. on mouseUp me
  39.   if equal then
  40.     puppetSound(3, member("pick card", "100GPak Generic SFX"))
  41.     sprite(currentsel).member = member(sprite(spriteNum).member.name, "playing cards")
  42.     godlist.addCard(currentsel)
  43.     sprite(spriteNum).loc = location
  44.     waste.cards.deleteOne(waste.getlastcard())
  45.     if currentsel <> 38 then
  46.       if objectp(foundation[sprite(currentsel).row]) then
  47.         points = points + 10
  48.       end if
  49.     end if
  50.     repeat with i = 93 to 96
  51.       if tableau[sprite(i).row].getcardcount() > 0 then
  52.         sprite(i).loc = tableau[sprite(i).row].getlastcard().location
  53.         next repeat
  54.       end if
  55.       sprite(i).loc = sprite(i).loki
  56.     end repeat
  57.     if waste.getcardcount() > 0 then
  58.       sprite(spriteNum).member = member(waste.getlastcard().membername, "playing cards")
  59.     else
  60.       if waste.getcardcount() = 0 then
  61.         sprite(spriteNum).member = member("empty", "playing cards")
  62.         undercard.member = member("empty", "playing cards")
  63.         if stock.cards.count = 0 then
  64.           if redeals < 1 then
  65.             sprite(10).member = member("replenish", "playing cards")
  66.           else
  67.             if redeals = 1 then
  68.               sprite(10).member = member("empty", "playing cards")
  69.             end if
  70.           end if
  71.         end if
  72.       end if
  73.     end if
  74.     equal = 0
  75.     currentsel = 0
  76.     godlist = VOID
  77.     getlist = VOID
  78.     checkwin()
  79.   else
  80.     if not equal then
  81.       puppetSound(3, member("drop card", "100GPak Generic SFX"))
  82.       getlist = VOID
  83.       sprite(spriteNum).loc = location
  84.     end if
  85.   end if
  86. end
  87.